/**  
 * @Title: IBaseDao.java
 * @Package com.kaimadata.products.shanghui.common
 * @Description: TODO(鎴愰兘鍟嗕細妤风爜OA寮�彂)
 * @author 绉︽湁榫� 
 * @date 2012-9-12 涓嬪崍1:29:27
 * @version V1.0  
 */
package com.yc.eduonline.common;

import java.io.Serializable;
import java.util.Collection;
import java.util.List;

import org.springframework.dao.DataAccessException;

 
public interface IBaseDao<T, ID extends Serializable> {

	public abstract void save(T t) throws DataAccessException;

	public abstract void saveOrUpdate(T t) throws DataAccessException;

	public abstract T load(ID id) throws DataAccessException;

	public abstract T get(ID id) throws DataAccessException;

	public abstract boolean contains(T t) throws DataAccessException;

	public abstract void delete(T t) throws DataAccessException;

	public abstract void deleteAll(Collection<T> entities)
			throws DataAccessException;

	public abstract List<T> loadByHQL(String hqlString)
			throws DataAccessException;

	public abstract List<T> loadBySQL(String sqlString)
			throws DataAccessException;

	public abstract void refresh(T t) throws DataAccessException;

	public abstract void update(T t) throws DataAccessException;

}